Skip to content

[FLINK-38899][runtime-web] Introduce the Rescales/History sub-page for streaming jobs with the adaptive scheduler enabled#27874

Merged
RocMarshal merged 2 commits intoapache:masterfrom
och5351:FLINK-38899
Apr 11, 2026
Merged

[FLINK-38899][runtime-web] Introduce the Rescales/History sub-page for streaming jobs with the adaptive scheduler enabled#27874
RocMarshal merged 2 commits intoapache:masterfrom
och5351:FLINK-38899

Conversation

@och5351
Copy link
Copy Markdown
Contributor

@och5351 och5351 commented Apr 1, 2026

What is the purpose of the change

  • [FLINK-38899][runtime-web] Introduce the Rescales/History sub-page for streaming jobs with the adaptive scheduler enabled
  • The pr is not blocked by FLIP-495 completion and is independent sub-task in FLIP-487.

Brief change log

Adds the 'Rescales/History' tab and 'HistoryDetail' subpage in relation to [FLINK-38897][Runtime/REST] Introduce /jobs/:jobid/rescales/config endpoint to REST API #27580.

Dependent PRs

Rescales History Tab

image

Rescales HistoryDetail page

image

Verifying this change

Reference
#27826

Does this pull request potentially affect one of the following parts:

  • Dependencies (does it add or upgrade a dependency): (yes / no)
  • The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
  • The serializers: (yes / no / don't know)
  • The runtime per-record code paths (performance sensitive): (yes / no / don't know)
  • Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: (yes / no / don't know)
  • The S3 file system connector: (yes / no / don't know)

Documentation

  • Does this pull request introduce a new feature? (yes / no)
  • If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

@flinkbot
Copy link
Copy Markdown
Collaborator

flinkbot commented Apr 1, 2026

CI report:

Bot commands The @flinkbot bot supports the following commands:
  • @flinkbot run azure re-run the last Azure build

@RocMarshal RocMarshal self-assigned this Apr 1, 2026
Copy link
Copy Markdown
Contributor

@RocMarshal RocMarshal left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi, @och5351 Thank you for your hard work.

LGTM on the whole, just a few of comments.
PTAL in your free time :)

Comment thread flink-runtime-web/web-dashboard/src/app/interfaces/job-rescales.ts Outdated
Comment thread flink-runtime-web/web-dashboard/src/app/interfaces/job-rescales.ts Outdated
Comment thread flink-runtime-web/web-dashboard/src/app/interfaces/job-rescales.ts Outdated
Comment thread flink-runtime-web/web-dashboard/src/app/interfaces/job-rescales.ts Outdated
Comment thread flink-runtime-web/web-dashboard/src/app/interfaces/job-rescales.ts Outdated
@och5351
Copy link
Copy Markdown
Contributor Author

och5351 commented Apr 2, 2026

Hi, @RocMarshal !
Could you please review this one more time?

Thank you.

fe05b76

Comment thread flink-runtime-web/web-dashboard/src/app/interfaces/job-rescales.ts Outdated
@RocMarshal
Copy link
Copy Markdown
Contributor

RocMarshal commented Apr 3, 2026

I checked UI of the PR locally with #27705.

checked:

  • Refresh button related logic and correctness
  • Rescales page showing logic
  • The table basic information showing logic, like tooltip, table headers, columns...,etc.

LGTM +1 on the whole just a few of issues:

  • highlighted in the Fig.
image image
  • When I click the Rescales/History from Rescales/Configuration page, the new Rescales/History page did not request the /jobs/:jobid/rescales/history interface, We expect that in this case, the corresponding API can be requested again.

Thanks @och5351 for the hard work.
I conducted some manual tests locally and found some minor issues, PTAL next week:)

@och5351
Copy link
Copy Markdown
Contributor Author

och5351 commented Apr 6, 2026

I checked UI of the PR locally with #27705.

checked:

  • Refresh button related logic and correctness
  • Rescales page showing logic
  • The table basic information showing logic, like tooltip, table headers, columns...,etc.

LGTM +1 on the whole just a few of issues:

  • highlighted in the Fig.

image image

  • When I click the Rescales/History from Rescales/Configuration page, the new Rescales/History page did not request the /jobs/:jobid/rescales/history interface, We expect that in this case, the corresponding API can be requested again.

Thanks @och5351 for the hard work. I conducted some manual tests locally and found some minor issues, PTAL next week:)

Hi, @RocMarshal !
Thank you for your review.

Could you please review this again?

While waiting

image

Done

image

I have a question: does the Acquired Parallelism and Acquired Slots tab also apply hyphens while waiting?

@RocMarshal
Copy link
Copy Markdown
Contributor

When I click the Rescales/History from Rescales/Configuration page, the new Rescales/History page did not request
the /jobs/:jobid/rescales/history interface, We expect that in this case, the corresponding API can be requested again.

Thanks @och5351 for the quick updated.
I rechecked this scenario, and it doesn’t seem to be taking effect.
I’d like to confirm—does the behavior of the refresh button here follow any reference from other pages?

I have a question: does the Acquired Parallelism and Acquired Slots tab also apply hyphens while waiting?

That's a good catch, reasonable!

Copy link
Copy Markdown
Contributor

@RocMarshal RocMarshal left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @och5351 for the update
I'll merge it after the REST API related PRs ready and no more comments from other reviewers.

@och5351
Copy link
Copy Markdown
Contributor Author

och5351 commented Apr 7, 2026

Thanks @och5351 for the update I'll merge it after the REST API related PRs ready and no more comments from other reviewers.

Thank you, @RocMarshal!
I will merge all commits into one.

</tr>
</thead>
<tbody>
<ng-container *ngFor="let history of rescalesHistories; trackBy: trackById">
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

history -> jobRescaleDetails

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi, @RocMarshal !
I submit a new commit now. Could you please confirm it one more time?

})
export class JobRescalesComponent implements OnInit, OnDestroy {
public rescalesConfig?: RescalesConfig;
public rescalesHistories?: RescalesHistory;
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

rescalesHistories -> rescalesHistory

return item.rescaleUuid;
}

public onExpandChange(history: BriefJobRescaleDetails, expanded: boolean): void {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

history -> jobRescaleDetails

}

public refresh(): void {
const expandedUuids = Array.from(this.expandedRowsSet);
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@RocMarshal
It seemed that the details section (e.g., acquirePrallelism) was not updating even after clicking the refresh button, so I have added some content.

Could you please confirm this change?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @och5351
I'll have check before the next review/approve

@och5351 och5351 force-pushed the FLINK-38899 branch 3 times, most recently from 2cb11c6 to 8181ed2 Compare April 9, 2026 02:14
takeUntil(this.destroy$)
)
.subscribe(([config]) => {
.subscribe(([histories, config]) => {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

histories -> history

@github-actions github-actions bot added the community-reviewed PR has been reviewed by the community. label Apr 9, 2026
@och5351 och5351 force-pushed the FLINK-38899 branch 2 times, most recently from fee5f2e to 3f2e7c7 Compare April 9, 2026 10:53
…r streaming jobs with the adaptive scheduler enabled

Co-authored-by: Matthias Pohl <mpohl@confluent.io>
Co-authored-by: Yuepeng Pan <hipanyuepeng@gmail.com>
… when the schedulerExecutionMode variable value is null

Co-authored-by: Matthias Pohl <mpohl@confluent.io>
Co-authored-by: Yuepeng Pan <hipanyuepeng@gmail.com>
@RocMarshal RocMarshal merged commit 451372a into apache:master Apr 11, 2026
@RocMarshal
Copy link
Copy Markdown
Contributor

Thanks @och5351 , merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

community-reviewed PR has been reviewed by the community.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants